/*    */ package com.hp.bon.logreverse.bi;
/*    */ 
/*    */ import com.hp.bon.logreverse.DCCDecoder;
/*    */ import com.hp.bon.logreverse.IDecoder;
/*    */ import com.hp.bon.logreverse.MsgInfo;
/*    */ import com.hp.bon.logreverse.ReverseLogEvent;
/*    */ import com.hp.bon.logreverse.SoapDecoder;
/*    */ import org.slf4j.Logger;
/*    */ import org.slf4j.LoggerFactory;
/*    */ 
/*    */ public class BIDecoder
/*    */   implements IDecoder
/*    */ {
/* 13 */   private static final Logger LOG = LoggerFactory.getLogger(BIDecoder.class);
/*    */ 
/* 18 */   DCCDecoder dccDecoder = new DCCDecoder();
/* 19 */   SoapDecoder soapDecoder = new SoapDecoder();
/*    */   IDecoder curDecoder;
/*    */ 
/*    */   public boolean isMatch(ReverseLogEvent logEvent)
/*    */   {
/* 24 */     if (this.dccDecoder.isMatch(logEvent)) {
/* 25 */       this.curDecoder = this.dccDecoder;
/* 26 */       return true;
/* 27 */     }if (this.soapDecoder.isMatch(logEvent)) {
/* 28 */       this.curDecoder = this.soapDecoder;
/* 29 */       return true;
/*    */     }
/* 31 */     return false;
/*    */   }
/*    */ 
/*    */   public boolean isParse()
/*    */     throws Exception
/*    */   {
/* 44 */     if (!this.curDecoder.isParse()) {
/* 45 */       return false;
/*    */     }
/*    */ 
/* 48 */     if ((this.curDecoder instanceof DCCDecoder)) {
/* 49 */       MsgInfo msgInfo = this.curDecoder.getMsgInfo();
/*    */ 
/* 56 */       if (msgInfo.isRequest() != msgInfo.isRecv()) {
/* 57 */         LOG.debug("not need process:" + msgInfo.getLogEvent().getLineSeq());
/* 58 */         return false;
/*    */       }
/*    */     }
/* 61 */     return true;
/*    */   }
/*    */ 
/*    */   public MsgInfo parse()
/*    */     throws Exception
/*    */   {
/* 71 */     return this.curDecoder.parse();
/*    */   }
/*    */ 
/*    */   public MsgInfo getMsgInfo()
/*    */   {
/* 76 */     return this.curDecoder.getMsgInfo();
/*    */   }
/*    */ }

/* Location:           C:\Users\think\Desktop\sgw_2.1.jar
 * Qualified Name:     com.hp.bon.logreverse.bi.BIDecoder
 * JD-Core Version:    0.6.1
 */